Self-organizing network communication

ABSTRACT

A method includes after determining that a first type of communication path to a self-organizing network controller is not available at an access point that supports a first wireless local area network, selecting, by an agent application at the access point, a second type of communication path to the self-organizing network controller from a prioritized set of communication paths. The method also includes attempting to establish a communication connection to the self-organizing network controller using the second type of communication path.

I. FIELD

The present disclosure is generally related to a self-organizing network(SON) communication.

II. DESCRIPTION OF RELATED ART

Mobile communication providers, such as cellular data providers, mayutilize self-organizing network (SON) controllers to setup and maintainwide area wireless networks. For example, a SON controller may beutilized to control configuration settings associated with base stationssuch as NodeB stations of a Long Term Evolution (LTE) network. Due toincreases in demand, wireless hotspots of local area networks can beutilized to offload some demand from wireless wide area networks;however, identifying resources and configuring resources to offloaddemand can be challenging.

III. BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a particular embodiment of a system thatincludes one or more access points and one or more base stations thatare controlled via a SON controller;

FIG. 2 is a flowchart of a particular embodiment of a method ofautomatically establishing communications from an access point to a SONcontroller;

FIG. 3 is a flowchart of a second particular embodiment of a method ofestablishing communications from an access point to a SON controller;and

FIG. 4 is a block diagram of a particular embodiment of a computersystem that includes an agent application to establish communicationsfrom an access point to a SON controller.

IV. DETAILED DESCRIPTION

Controlling “hotspots” of wireless local area networks (e.g., “WiFi”hotspots) along with base stations of wireless wide area networks usinga SON controller can improve performance of a wireless wide area networkand can improve customer satisfaction associated with data demands.However, setting up wireless local area networks using access points maybe demanding when a large number of access points are utilized tooffload capacity from the wireless wide area network. Accordingly,methods to facilitate automated setup or configuration of access pointsto establish communications with a SON controller may simplify setup andoperation of wireless local area networks, especially in the context ofcombined control of wireless local area network access points (orhotspots) and wireless wide area network base stations.

Referring to FIG. 1, a block diagram of a particular embodiment of asystem that includes one or more access points and one or more basestations that are controlled via a SON controller is disclosed andgenerally designated 100. In FIG. 1, for purposes of illustration, thesystem 100 may include a first access point 102 and a second accesspoint 104. Although only two access points 102 and 104 are illustrated,the system 100 may include more than two access points. The system 100also includes a first base station 106 and a second base station 108.Although only two base stations 106 and 108 are illustrated in FIG. 1,the system 100 may include more than two base stations.

The access points 102, 104 and the base stations 106, 108 may be coupledvia one or more networks 114 to a provider system 116. The providersystem 116 may include a SON controller 156. The SON controller 156 maybe configured to control operation of the base stations 106, 108 and theaccess points 102, 104 in a combined manner in order to managecommunication services to one or more stations, such as a stations 124,125. A station, such as a stations 124, 125, may denote a user ofwireless resources of one of more wireless networks and may include acell phone, smart phone, tablet, laptop, or other wireless communicationdevice. Each of the access points 102, 104 may be associated with arespective wireless coverage area in which the access point supports awireless local area network. For example, the first access point 102 maybe associated with a coverage area 110 in which the first access point102 supports a wireless local area network, such as an Institute ofElectrical and Electronics Engineers (IEEE) 802.11 network.Additionally, each of the base stations 106, 108 may be associated witha coverage area. For example, the first base station 106 may beassociated with a coverage area 112 in which the first base station 106supports a wireless wide area network, such as a 3rd GenerationPartnership Project Long-Term Evolution (3GPP LTE) network or a 3GPPEvolved Universal Terrestrial Access (EUT) network.

The base stations 106, 108 and the access points 102, 104 may be coupledto the provider systems 116 and/or to one another via wired connections.For example, the first access point 102 may be coupled to the network114 via a wireline connection 118. As another example, the second accesspoint 104 may be coupled to the network 114 via the wireline connection122. The base station 106 may be coupled to the network 114 via thewireline connection 120 and the base station 108 may be coupled to thenetwork 114 via a wireline connection 123. Each wireline connection mayinclude wires (e.g., twisted pairs or un-twisted pairs), cables (e.g.,coaxial cables), fibers (e.g., optical fibers), or other physicalcommunication media.

To facilitate operation of the access points 102, 104 with the providersystems 116, each access point 102, 104 may include an agent application140. The agent application 140 may include a SON connection controller142 and an access point controller 144 (e.g., SON client). The agentapplication 140 may correspond to instructions 136 stored at a memory134 of the access point 102. The instructions 136 may be executable by aprocessor 130 of the access point 102 in order to facilitatecommunication between the access point 102 and the SON controller 156 ofthe provider systems 116. The agent application 140 may pre-loaded intothe access point 102 by a service provider, may be downloaded by theaccess point 102, or may be loaded into the access point 102 by a useror a technician of the access point 102. The agent application 140 maybe started during a boot-up process of the access point 102 or by acommand from a user of the access point 102. The agent application 140may be modified by an application update provided by the SON controller156 or by an application update downloaded by the access point 102. Theagent application 140 may be programmable by the SON controller 156 orby commands from the user or an administrator of the access point 102.

Additionally, the access point 102 may include multiple communicationinterfaces 132. For example, the access point 102 may include a wirelinecommunication interface associated with coupling the access point 102via the wireline connection 118 to the provider systems 116. Thewireline communication interface may include an Ethernet interface, afiber-optic interface, or another wireline or optical communicationinterface or connection. Additionally, the communication interfaces 132may include one or more wireless interfaces, such as a wirelesscommunication interface configured to support the wireless local areanetwork associated with the access point 102. Additionally, thecommunication interfaces 132 may include one or more other wirelesscommunication interfaces, such as an interface configured to communicatewith one of the base stations 106 or 108 via a corresponding wirelesswide area network.

The access point 102 may also include other applications 138, such asapplications, that when executed by the processor 130, performoperations that facilitate communications between the access point 102and the stations 124, 125, between the access point 102 and one or moreother access points or base stations, or between the access point 102and other devices that are accessible via the network 114, such as theprovider systems 116 or remote communication servers, such as aninternet website server. One or more of the applications 138 may beexecutable at the access point 102 to support access pointcommunications, or to support an encryption process used by the accesspoint 102. The access point 102 may operate according to one or moresettings 148 that identify particular operational parameters of theaccess point 102. For example, the settings 148 may include informationindicating a transmitter or transceiver power to be used by the accesspoint 102. The settings 148 may also include a communication protocol orprotocols to be utilized by the access point 102 to support the wirelesslocal area network.

The access point 102 may also include data identifying a prioritized setof communication paths 146. The prioritized set of communication paths146 may be data elements accessed by the access point 102, commandsexecutable by the access point, settings established by a user orsettings established by a service provider associated with the network114. The prioritized set of communication paths 146 may include utilizedby the access point 102 during startup or configuration of the accesspoint 102 in order to establish communications with the SON controller156. Thus, the access point 102 may be able to automatically setup orestablish communications with the SON controller 156 via a variety ofdifferent communication paths based on the prioritized set ofcommunication paths 146. To illustrate, when the access point 102attempts to establish communications with the SON controller 156, theaccess point 102 may prioritize communications via the wirelineconnection 118 based on the prioritized set of communication paths 146.If no wireline connection 118 is available (e.g., if no Ethernetconnection is coupled to the access point 102), the access point 102 mayselect a different communication path from the prioritized set ofcommunication paths 146. For example, the access point 102 may attemptto establish a communication path 174 via a wireless connection 176 tothe first base station 106. As another example, the access point 102 mayattempt to establish a communication path 180 via a wireless connection178 to another access point (e.g., the second access point 104). Thus,the access point 102 may be configured to automatically establishcommunication with the SON controller 156 to facilitate setup andmanagement of a combined wireless wide area network and wireless localarea network.

After establishing communications with the SON controller 156, theaccess point 102 may gather information (e.g., via the access pointcontroller 144) and send the information to the SON controller 156 viathe established communication connection with the SON controller 156.The SON controller 156 may analyze data received from the access point102 as well as data received from other access points (e.g., secondaccess point 104) and base stations (e.g., the base stations 106, 108)and generate control data 184. The control data 184 may be sent to anydevice. For example, the control data 184 for the access point 102 maybe sent via communication connection 170 to the access point 102. Theaccess point controller 144 may analyze the control data 184 and takeaction based on the control data 184. For example, the control data 184may indicate to modify a setting 148 associated with the access point102, in which case the access point controller 144 may modify thesetting 148 in the memory 134 such that the access point 102 operatesaccording to the modified setting 148. As another example, the controldata 184 may be directed to one or more stations, such as the stations124, 125 that are coupled to the access point 102 via the wireless localarea network. In this example, the access point controller 144 may causethe control data 184, or a portion of the control data 184, that isdirected to the station 124, to be transmitted to the station 124 viaone or more communication interfaces 132 associated with the wirelesslocal area network.

When the access point 102 establishes a communication connection to theSON controller 156 via an untrusted communication device (e.g., such asthe second access point 104), the access point 102 may attempt toauthenticate or authorize the untrusted communication device. Forexample, when the first access point 102 does not have informationindicating that the second access point 104 is an authorized orauthenticated access point, after establishing the communicationconnection 180 with the SON controller 156 via the second access point104, the first access point 102 may attempt to authenticate the secondaccess point 104 via an authentication server 154 of the providersystems 116. To illustrate, the access point 102 may transmitidentification information associated with the second access point 104to the authentication server 154. The authentication server 154 mayaccess network data 152 to determine whether the second access point 104is authenticated.

During operation, when the first access point 102 starts the agentapplication 140, the agent application 140 may activate the SONconnection controller 142 to attempt to establish a communicationconnection to the SON controller 156. In a particular embodiment, theagent application 140 may be started during a setup operation of theaccess point 102 or during a power up operation of the access point 102.The SON connection controller 142 may determine which communicationinterfaces of the communication interfaces 132 are available forcommunication. For example, the SON connection controller 142 maydetermine whether a wired connection is coupled to an Ethernetcommunication interface of the set of communication interfaces 132. Asanother example, the SON connection controller 142 may determine whethera base station (e.g., base station 106) associated with a wireless widearea network is detected via a wireless communication interface of theset of communication interfaces 132. As another example, the SONconnection controller 142 may determine whether a wireless local areanetwork associated with the second access point 104 is detected via awireless communication interface of the set of communication interfaces132.

The SON connection controller 142 may access the prioritized set ofcommunication paths 146. The prioritized set of communication paths 146may indicate which communication path of the set of availablecommunication paths is preferred. For example, the communication path170 associated with the wireline connection 118 may be preferred.However, when the SON connection controller 142 determines that thewireline connection 118 is not available (e.g., no wired connection iscoupled to an Ethernet communication port), the SON connectioncontroller 142 may select a different communication path from the set ofprioritized communication paths 146 to attempt to establish thecommunication connection to the SON controller 156. In a particularexample, the prioritized communication paths 146 may indicate that thenext preferred communication path is the wireless wide area network.Accordingly, the access point 102 may attempt to establish thecommunication connection associated with the communication path 174 tothe SON controller 156 via the first base station 106. If thecommunication connection associated with the communication path 174 isestablished via the base station 106, the access point 102 may sendinformation 182 to the SON controller 156 via the communication path174. In this example, the information 182 may include access point datagenerated by the access point 102 or other information associated withthe access point 102. However, if the communication connectionassociated with the communication path 174 is not established (e.g., ifthe base station 106 does not accept a request from the access point 102to establish the communication connection), the access point 102 mayattempt to establish an alternate connection, such as a connectionassociated with the communication path 180 via the second access point104.

After a communication path (e.g., the communication paths 170, 174, or180) is established, the access point controller 144 may gather dataassociated with the access point 102, such as access point dataindicating load or demand associated with the wireless local areanetwork supported by the access point 102, quality of service parametersassociated with the wireless local area network supported by the accesspoint 102, signal strength information (e.g., as indicated by the one ormore stations 124, 125 associated with the wireless local area network),applications in use by stations in communication with the access point102 (e.g., stations 124, 125), access patterns of stations associatedwith the wireless local area network (e.g., whether the stations areprimarily utilizing voice data or text communications), rates ofcommunications, and so forth. The access point 102 may transmit theaccess point data and other information associated with the access point102 as the information 182 to the SON controller 156.

Additionally, the second access point 104 may generate second accesspoint data associated with the second access point 104 based on an agentapplication operating at the second access point 104. The second accesspoint 104 may transmit the second access point data associated with thesecond access point 104 and other information (e.g., as the information182) to the SON controller 156. Further, the base stations 106, 108 maygenerate base station data and station data (e.g., data associated witha station, such as station 124) and may transmit the base station data,the station data and other information (e.g., as the information 182) tothe SON controller 156.

The SON controller 156 may include a processor 158 and a memory 160accessible to the processor 158. The memory 160 may include instructions162 that are executable by the processor 158 to perform operations atthe SON controller 156. For example, the SON controller 156 may beconfigured to receive the information 182 from the access point 102,from other access points (e.g., the second access point 104), from oneor more base stations (e.g., the first base station 106 or the secondbase station 108), or from a combination thereof In a particularembodiment, the SON controller 156 may be configured to communicate witha master “hotspot” controller (not shown) that may control one or moreof the access points (e.g., the access points 102 or 104) of a wirelessnetwork of hotspots. For example, the SON controller 156 mayalternatively receive the information 182 from one or more of the accesspoints 102, 104 via the master “hotspot” controller. In this example,the SON controller 156 may transmit control data 184 to one or more ofthe access points 102, 104 via the master “hotspot” controller.

The SON controller 156 may be configured to analyze the information 182received from the various access points and base stations and togenerate the control data 184 based on the analysis. The control data184 may cause one or more of the access points (e.g., access points 102or 104), one or more of the base stations (e.g., base stations 106 or108) or one or more of the stations (e.g., stations 124 or 125) tomodify operational parameters or settings, to execute an application, orto perform other activities or operations of the combined wide area andlocal area networks associated with the SON controller 156.

Examples of operations that may be performed by the base stations 106,108 based on the control data 184 include selecting particular antennaeorganizations (e.g., using a single antenna or multiple antennas),utilizing particular transmitter power, utilizing particularcommunication protocols, utilizing beam-forming to directionallytransmit data or receive data, etc. Examples of operations that may beperformed by the access points 102, 104 based on the control data 184include selecting particular antennae organizations (e.g., using asingle antenna or multiple antennas), utilizing particular transmitterpower, utilizing particular communication protocols, utilizingbeam-forming to directionally transmit data or receive data, etc.Examples of operations that may be performed by stations (e.g., thestations 124, 125) responsive to the control data 184 include executingone or more applications (e.g., a station monitoring application or astation reporting application), selecting particular antennaeorganizations, utilizing particular transmitter power, utilizingparticular communication protocols, utilizing beam-forming todirectionally transmit data or receive data, etc.

Other operations that may be performed by stations responsive to thecontrol data 184 may include switching from communicating via a wirelesswide area network (e.g., the wireless wide area network supported by thefirst base station 106) to communicating via a wireless local areanetwork (e.g., the wireless local area network supported by the firstaccess point 102) or switching from communicating via a wireless localarea network (e.g., the wireless local area network supported by thefirst access point 102) to communicating via a wireless wide areanetwork (e.g., the wireless wide area network supported by the firstbase station 106). Additional operations that may be performed bystations responsive to the control data 184 may include changing fromcommunicating via a first access point (e.g., the access point 102) tocommunicating via a second access point (e.g., the access point 104),changing an operational parameter of a particular application (e.g., anencryption parameter, a data-communication-rate parameter such as aframe rate, etc.), terminating an application executing at the station(e.g., station 124), or any combination thereof.

Changing one or more device operational parameters, device settings, orthe execution of an application at devices (e.g., the base stations,access points, or stations) based on the control data 184 may enableautomatic configuration of one or more devices associated with the SONcontroller 156. For example, changes in parameters or settings of one ormore access points (e.g., the access points 102 and 104) based on thecontrol data 184 from the SON controller 156 may enable automaticconfiguration of the one or more access points. The automaticconfiguration may be based on certain conditions, such as network load,time of day, or other demands (e.g., device processing demands ornetwork processing demands). Access point parameter changes mayfacilitate the automatic discovery of access points by the SONcontroller 156. For example, an access point introduced to a network of“hotspots” (e.g., a network of one or more access points) associatedwith the SON controller 156 may undergo parameter changes (e.g., theinitialization of parameters or settings) associated with networkintroduction.

The control data 184 generated by the SON controller 156 may includepolicy enforcement information for managing network access, data, andservices between the network 114 and one or more devices (e.g., accesspoints, base stations, or stations). For example, the policy enforcementinformation may include policy and charging rules of a policy andcharging rules function (PCRF) associated with the SON controller 156.To illustrate, the SON controller 156 may be configured to transmitpolicy information to a master “hotspot” controller (not shown) thatcontrols one or more of the access points (e.g., the access points 102or 104) of a wireless network of hotspots. The master “hotspot”controller may distribute, enforce, or distribute and enforce the policyinformation among the one or more access points of a wireless network ofhotspots.

The SON controller 156 may utilize the received information 182 andcontrol data 184 to establish a dynamic “super channel” between one ormore stations (e.g., stations 124 or 125) and the wireless networks(e.g., one or more wireless wide area networks and one or more wirelesslocal area networks) to facilitate load balancing of network data. Forexample, the station 124 may have access to and may be capable ofreceiving data from both the wireless wide area network (via a wirelessconnection to base station 106) and the wireless local area network (viaa wireless connection to access point 102). In this example, the SONcontroller 156 may establish a dynamic “super channel” in which data toand from the station 124 may proceed dynamically through either thewireless wide area network or the wireless local area network. The SONcontroller 156 may utilize the received information 182 and otherinformation to determine network loading of the wireless networks. Basedon the determined network loading, the SON controller 156 may transmitcontrol data 184 to the station 124 to cause the station to dynamicallyswitch between receiving data from the wireless wide area network toreceiving data from the wireless local area network.

Accordingly, the stations (e.g., the stations 124, 125), the accesspoints (e.g., the access points 102, 104), and the base stations (e.g.,base stations 106, 108) may undergo automated setup or configurationchanges for establishing communications with the SON controller 156 tomodify setup and operation of wireless networks especially in thecontext of combined control of wireless local area network access pointsand wireless wide area network base stations.

Referring to FIG. 2, a flowchart of a particular embodiment of a methodof automatically establishing communications from an access point to aSON controller is disclosed and generally designated 200. The method 200includes, at 202, determining that a first type of communication path toa self-organizing network controller is not available at an access pointthat supports a first wireless local area network. Types ofcommunication paths may include communication paths associated with awireline connection, a wireless connection, a base station connection,an access point connection, or any combination thereof. For example, inFIG. 1, the first access point 102 may determine that the communicationpath 170 associated with the wireline connection 118 to the SONcontroller 156 is not available. To illustrate, the SON connectioncontroller 142 may determine that no Ethernet connection is coupled toan Ethernet communication interface of the set of communicationinterfaces 132. After determining that the first type of communicationpath is not available, the method 200 may include, at 204, selecting byan agent application at the access point 102, a second type ofcommunication path to the self-organizing network controller from aprioritized set of types of communications paths. For example, based ondetermining that the communication path 170 associated with the wirelineconnection 118 is not available, the SON connection controller 142 mayaccess the prioritized communications paths 146 and select a secondcommunication path. For example, the second communication path mayinclude a wireless wide area communication path associated with thewireless connection 176 to the first base station 106 or a wirelesslocal area communication path associated with the wireless connection178 to the second access point 104.

After selecting the second type of communication path, the method 200may include, at 206, attempting to establish a communication connectionto the self-organizing network controller using the second type ofcommunication path. For example, after the SON connection controller 142selects a second communication path type from the prioritizedcommunication paths 146, the agent application 140 may utilize acorresponding communication interface 132 to attempt to establish thecommunication connection (e.g., the connection associated with thecommunication path 174 or the connection associated with thecommunication path 180) to the SON controller 156 in order to transmitinformation associated with the access point 102 (e.g., as theinformation 182) to the SON controller 156. Accordingly, the method 200enables an access point to automatically establish a communicationconnection to a SON controller in order to facilitate configuration of awireless local area network (e.g., by receiving control data includingconfiguration information from the SON controller 156).

Referring to FIG. 3, a flowchart of a second particular embodiment of amethod of establishing communications from an access point to a SONcontroller is disclosed and generally designated 300. The method 300includes, at 302, starting an agent application. For example, the agentapplication may be started at power-on of an access point. Toillustrate, the access point 102 of FIG. 1 may start the agentapplication 140 at power-on of the access point 102 or in response to auser input.

The method 300 also includes, at 304, accessing data identifyingprioritized communication paths. For example, the SON connectioncontroller 142 of FIG. 1 may access the prioritized communication paths146 from the memory 134 of the access point 102. The prioritizedcommunication paths 146 may indicate a prioritized set of communicationpaths to be utilized by the access point 102 to set up communicationswith the SON controller 156.

The method 300 also includes, at 306, selecting a next communicationpath from the prioritized communication paths and, at 308, determiningwhether the selected path is available. For example, when the first pathin the prioritized communication paths 146 is a wired communication path(e.g., communication path 170), after the wired communication path isselected, the access point 102 may determine whether the wiredcommunication path associated with the wireline connection 118 isavailable. When the selected communication path is not available, themethod 300 may include accessing the data identifying the prioritizedcommunication paths again, at 304, and selecting a next communicationpath from the prioritized communication paths, at 306. When the selectedcommunication path is available, the method 300 includes, at 310,attempting to establish a communication connection to theself-organizing network controller via the selected path, at 310. Forexample, when the wired communication path associated with the wirelineconnection 118 is available to the access point 102, the SON connectioncontroller 142 may attempt to establish communications via thecommunications path 170 via the wireline connection 118 to the SONcontroller 156. Similarly, when the wired communication path associatedwith the wireline connection 118 is not available, based on theprioritized communication paths 146, the access point 102 may attempt toestablish a second communication path 174 via the first base station106. When the second communication path 174 is not available (e.g., whenthe base station 106 does not accept the access point's requests toestablish the communication connection), the access point 102 mayattempt to establish the third communication path 180 via the secondaccess point 104.

After the attempt to establish the communication connection to the SONcontroller via the selected path, the method 300 may include determiningwhether the connection was established, at 312. When the connection wasnot established via the selected communication path, the method 300includes accessing the data identifying the prioritized communicationpaths, at 304, and selecting a next communication path from theprioritized list of communication paths, at 306. When the communicationconnection was established, at 312, the method 300 may include, at 314,attempting to authenticate intermediate devices on the communicationpath. For example, when the access point 102 establishes the thirdcommunication path 180 via the second access point 104, the access point102 may attempt to authenticate the second access point 104 by accessingan authentication server 154 of the provider systems 116.

The method 300 may also include, at 316, determining first informationassociated with a wireless local area network supported by the accesspoint. For example, the first information may include access point dataindicating load or demand associated with the wireless local areanetwork, quality of service parameters associated with the wirelesslocal area network, signal strength of signals received at the accesspoint, signal strength of signals transmitted by the access point andreceived by the station, etc. As another example, the first informationmay include station data, such as access patterns of stations (e.g.,whether the station tends to stream media) associated with the wirelesslocal area network, applications executed by the stations (e.g., voiceapplications, media applications, messaging applications, etc.)associated with the wireless local area network, etc. In someembodiments, the first information includes both the access point dataand the station data.

The method 300 may also include, at 318, sending the first informationto the SON controller. For example, the information 182 may be sent fromthe access point 102 via the established communication connection andassociated communication path (e.g., the communication path 170, 174, or180) to the SON controller 156. The SON controller 156 may be configuredto receive the first information and to receive second informationassociated with a base station of a wireless wide area network. In aparticular embodiment, the SON controller 156 may be configured toreceive third information associated with other wireless local areanetworks supported by a plurality of other access points.

The method 300 may also include receiving control data from the SONcontroller, at 320. For example, the SON controller 156 may analyze theinformation 182, which may include information from the access point 102(e.g., first information), information from base stations (e.g., secondinformation associated with the base station 106 or the base station108), information from other access points (e.g., third informationassociated with the second access point 104), and information from oneor more stations (e.g., the stations 124, 125). Analysis of theinformation 182 by the SON controller 156 may include performanceanalysis of devices (e.g., access points, base stations, or stations) orof networks (e.g., a wireless wide area network or a wireless local areanetwork) associated with the SON controller 156. The SON controller 156may determine operations to be performed by devices associated with theSON controller 156 or settings to be implemented by devices associatedwith the SON controller 156. For example, device settings to beimplemented may include transmitter or transceiver power settings,communication protocol settings, beam-forming settings,data-communication rate settings, security or encryption settings,device initialization settings, etc. Based on the determinations by theSON controller 156, devices associated with the SON controller 156, suchas one or more access points, one or more base stations, or one or morestations, may receive control data 184 from the SON controller 156.

In a particular embodiment, the control data 184 may include one or moreoperational parameters associated with the access point. In thisexample, the method 300 may include, at 322, changing an operationalparameter of the access point based on the control data. For example,configuration settings associated with the access point may be changedor an application at the access point may be executed. To illustrate, inresponse to the control data 184, the access point 102 may change one ormore settings 148 at the access point 102, may execute an application138 (e.g., a transcoding application) at the access point 102, or both.For example, the access point 102 may have a data-communicationparameter configured to allow the access point 102 to transmit data at afirst data rate to the station 124 that can receive the data at thefirst data rate. The access point 102 may transmit data to a secondstation 125 at the first data rate that is faster than a rate the datacan be received by the second station 125. Based on the control data184, the access point 102 may change its data-communication parameter ormay execute an application to modify the transmission rate of the datatransmitted to the second station 125. Changes to one or moreoperational parameters associated with the access point 102 based on thecontrol data 184 may enable automatic setup of the access point 102 andallow improved control by the SON controller 156 of the performance ofthe wireless local area network associated with the access point 102.Network performance of the wireless local area network associated withthe SON controller 156 may be modified to compensate for the networkperformance of a wireless wide area network that is also associated withthe SON controller 156.

As another example, the control data 184 may include one or moreinstructions for a station (e.g., the station 124) coupled to the accesspoint (e.g., the access point 102). The instructions for the station maybe in the form of one or more commands, or station parameters. In thisexample, the method 300 may include, at 324, sending instructions fromthe access point 102 to the station 124 via the wireless local areanetwork. For example, when the control data 184 includes an instructionfor the station 124, the access point 102 may send the instruction via awireless connection 126 over the wireless local area network supportedby the access point 102. To illustrate, the station 124 may process dataat a rate that is faster than its current data transmission rate. Inresponse to an instruction received from the access point 102 based onthe control data 184, the station may change a data-communicationparameter of the station 124 or may execute an application at thestation 124 to modify the data transmission rate of the station 124(e.g., to increase the rate) to better match the processing needs of thestation 124. As a further illustration, in response to an instructionreceived from the access point 102 based on the control data 184, thestation 124 may modify a configuration setting of the station 124, mayjoin a second wireless local area network associated with a secondaccess point 104, may join the wireless wide area network, may terminatean application executing at the station 124, may execute an applicationat the station 124, or may change a setting associated with theapplication.

Accordingly, the access point 102 may undergo automated setup orconfiguration for establishing communications with a SON controller,improve setup and operation of wireless local area networks, especiallyin the context of combined control of wireless local area networkhotspots or access points and wireless wide area network base stations.

Referring to FIG. 4, a block diagram of a particular embodiment of acomputer system that includes an agent application to establishcommunications from an access point to a SON controller is disclosed andgenerally designated 400. The computer system 400 may include a set ofinstructions that can be executed to cause the computer system 400 toperform any one or more of the methods or computer based functionsdisclosed herein. The computer system 400 may operate as a standalonedevice or may be connected, e.g., using a network, to other computersystems or peripheral devices. For example, the computer system 400 mayinclude, may be included within, or may correspond to one or more of thecomponents of the system 100, the provider systems 116 of FIG. 1, thebase stations 106 and 108 of FIG. 1, the access points 102 and 104 ofFIG. 1, the stations 124 and 125, or a combination thereof describedwith reference to FIG. 1.

In a networked deployment, the computer system 400 may operate in thecapacity of a server or as a client user computer in a server-clientuser network environment, or as a peer computer system in a peer-to-peer(or distributed) network environment, or as a device operating withinthe network 114 (e.g., one or more wireless wide area networks and oneor more wireless local area networks). The computer system 400 may alsobe implemented as or incorporated into various other devices, such as apersonal computer (PC), a tablet PC, a wireless set-top box (STB), apersonal digital assistant (PDA), a customer premises equipment device,an endpoint device, a mobile device, a palmtop computer, a laptopcomputer, a desktop computer, a communications device, a wirelesstelephone, or any other machine capable of executing a set ofinstructions (sequential or otherwise) that specify actions to be takenby that machine. In a particular embodiment, the computer system 400 maybe implemented using electronic devices that provide video, audio, ordata communication. Further, while one computer system 400 isillustrated, the term “system” shall also be taken to include anycollection of systems or sub-systems that individually or jointlyexecute a set, or multiple sets, of instructions to perform one or morecomputer functions.

As illustrated in FIG. 4, the computer system 400 includes a processor402, e.g., a central processing unit (CPU), a graphics processing unit(GPU), or both. The processor 402 may be one or more components (e.g., aprocessor) of the provider systems 116, one or more components (e.g., aprocessor) of the base stations 106 and 108, one or more components(e.g., a processor) of the access points 102 and 104, or one or morecomponents (e.g., a processor) of the stations 124 and 125. In aparticular embodiment, the processor 402 may include multipleprocessors. For example, the processor 402 may include distributedprocessors, parallel processors, or both. The multiple processors may beincluded in, or coupled to, a single device or multiple devices. Theprocessor 402 may include a virtual processor. In a particularembodiment, the processor 402 may include a state machine, anapplication specific integrated circuit (ASIC), or a programmable gatearray (PGA) (e.g., a field programmable gate array (FPGA)).

Moreover, the computer system 400 may include a main memory 404 and astatic memory 406, which can communicate with each other via a bus 408.For example, the main memory 404 may be one or more components (e.g., amemory) of the provider systems 116, one or more components (e.g., amemory) of the base stations 106 and 108, one or more components (e.g.,a memory) of the access points 102 and 104, or one or more components(e.g., a memory) of the stations 124 and 125. As shown, the computersystem 400 may further include a video display unit 410, such as aliquid crystal display (LCD), a flat panel display, or a solid statedisplay. Additionally, the computer system 400 may include an inputdevice 412, such as a keyboard, a touch screen, and a cursor controldevice 414, such as a mouse. The computer system 400 may also include adrive unit 416, a signal generation device 418, such as a speaker orremote control, and a communication interface device(s) 420, such ascommunication interface device(s) associated with the communicationinterfaces 132. The computer system 400 may not include an input device(e.g., a server may not include an input device).

In a particular embodiment, as depicted in FIG. 4, the drive unit 416may include a computer-readable storage device 422 in which one or moresets of instructions 424 (e.g. an agent application), can be embedded.The computer-readable storage device 422 may be random access memory(RAM), read-only memory (ROM), programmable read-only memory (PROM),erasable PROM (EPROM), electrically erasable PROM (EEPROM), register(s),hard disk, a removable disk, a compact disc read-only memory (CD-ROM),other optical disk storage, magnetic disk storage, magnetic storagedevices, or any other storage device that can be used to store programcode in the form of instructions or data and that can be accessed by acomputer and/or processor. The computer-readable storage device is anarticle of manufacture. The computer-readable storage device is aphysical device and is not a signal. Further, the instructions 424 mayembody one or more of the methods or logic as described herein. Theinstructions 424 may be executable by the processor 402 to perform oneor more functions or methods described herein, such as the methodsdescribed with reference to FIG. 2 or FIG. 3. In a particularembodiment, the instructions 424 may reside completely, or at leastpartially, within the main memory 404, the static memory 406, and/orwithin the processor 402 during execution by the computer system 400.The processor 402 may execute the instructions 424 to perform operationscorresponding to one or more of the methods as described herein. Theprocessor 402 may perform the operations directly, or the processor 402may facilitate, direct, or cooperate with another device or component toperform the operations

In an alternative embodiment, dedicated hardware implementations, suchas application specific integrated circuits, programmable logic arraysand other hardware devices, may be constructed to implement one or moreof the methods described herein. Various embodiments may broadly includea variety of electronic and computer systems. One or more embodimentsdescribed herein may implement functions using two or more specificinterconnected hardware modules or devices with related control and datasignals that can be communicated between and through the modules, or asportions of an application-specific integrated circuit. Accordingly, thepresent system encompasses software, firmware, and hardwareimplementations.

In accordance with various embodiments of the present disclosure, themethods described herein may be implemented by software programsexecutable by a computer system. Further, in an exemplary, non-limitingembodiment, implementations may include distributed processing,component/object distributed processing, and parallel processing.Alternatively, virtual computer system processing may be constructed toimplement one or more of the methods or functionality as describedherein.

The present disclosure includes a computer-readable storage device 422that stores the instructions 424 or receives, stores, and executes theinstructions 424, so that a device connected to a network 426 maycommunicate voice, video, or data over the network 426. The network 426may include the network 114 (e.g., a network in communication with oneor more wireless wide area networks and one or more wireless local areanetworks). The computer-readable storage device 422 device may includeor may be included within one or more of the components of the providersystems 116, one or more components of the base stations 106 and 108,one or more components of the access points 102 and 104, one or morecomponents of the stations 124 and 125, or a combination thereofdescribed with reference to FIG. 1. While the computer-readable storagedevice 422 is shown to be a single device, the computer-readable storagedevice 422 may include multiple devices. The computer-readable storagedevice 422 is capable of storing a set of instructions for execution bya processor to cause a computer system to perform any one or more of themethods or operations disclosed herein.

In a particular non-limiting, exemplary embodiment, thecomputer-readable storage device 422 may include a solid-state memorysuch as a memory card or other package that houses one or morenon-volatile read-only memories. Further, the computer-readable storagedevice 422 may be a random access memory or other volatile re-writablememory. Additionally, the computer-readable storage device 422 mayinclude a magneto-optical or optical device, such as a disk or tapes orother storage device.

The illustrations of the embodiments described herein are intended toprovide a general understanding of the structure of the variousembodiments. The illustrations are not intended to serve as a completedescription of all of the elements and features of apparatus and systemsthat utilize the structures or methods described herein. Many otherembodiments may be apparent to those of skill in the art upon reviewingthe disclosure. Other embodiments may be utilized and derived from thedisclosure, such that structural and logical substitutions and changesmay be made without departing from the scope of the disclosure.Accordingly, the disclosure and the figures are to be regarded asillustrative rather than restrictive.

Although specific embodiments have been illustrated and describedherein, it should be appreciated that any subsequent arrangementdesigned to achieve the same or similar purpose may be substituted forthe specific embodiments shown. This disclosure is intended to cover anyand all subsequent adaptations or variations of various embodiments.

The Abstract of the Disclosure is provided with the understanding thatit will not be used to interpret or limit the scope or meaning of theclaims. In addition, in the foregoing Detailed Description, variousfeatures may be grouped together or described in a single embodiment forthe purpose of streamlining the disclosure. This disclosure is not to beinterpreted as reflecting an intention that the claimed embodimentsrequire more features than are expressly recited in each claim. Rather,as the following claims reflect, subject matter may be directed to lessthan all of the features of any of the disclosed embodiments. Thus, thefollowing claims are incorporated into the Detailed Description, witheach claim standing on its own as defining separately claimed subjectmatter.

The above-disclosed subject matter is to be considered illustrative, andnot restrictive, and the appended claims are intended to cover all suchmodifications, enhancements, and other embodiments, which fall withinthe scope of the present disclosure. Thus, to the maximum extent allowedby law, the scope of the present disclosure is to be determined by thebroadest permissible interpretation of the following claims and theirequivalents, and shall not be restricted or limited by the foregoingdetailed description.

What is claimed is:
 1. A method comprising: after determining that afirst type of communication path to a self-organizing network controlleris not available at an access point that supports a first wireless localarea network, selecting, by an agent application at the access point, asecond type of communication path to the self-organizing networkcontroller from a prioritized set of communication paths; and attemptingto establish a communication connection to the self-organizing networkcontroller using the second type of communication path.
 2. The method ofclaim 1, wherein the first type of communication path is a wiredcommunication path.
 3. The method of claim 2, wherein the second type ofcommunication path is a wireless communication path via a wireless widearea network.
 4. The method of claim 1, further comprising, if anattempt to establish the communication connection is unsuccessful:selecting, by the agent application, a third type of communication pathto the self-organizing network controller from the prioritized set oftypes of communication paths; and attempting to establish a secondcommunication connection to the self-organizing network controller usingthe third type of communication path.
 5. The method of claim 4, whereinthe third type of communication path is a wireless communication pathvia a wireless local area network.
 6. The method of claim 1, furthercomprising: determining, by the agent application, first informationassociated with the wireless local area network; and after establishingthe communication connection, sending the first information to theself-organizing network controller.
 7. The method of claim 6, whereinthe self-organizing network controller is configured to receive thefirst information and to receive second information associated with abase station of a wireless wide area network, and further comprisingreceiving by the agent application, control data from theself-organizing network controller, wherein the control data isgenerated by the self-organizing network controller based on the firstinformation and the second information.
 8. The method of claim 7,wherein the control data is generated further based on third informationreceived by the self-organizing network controller from agentapplications at a plurality of other access points, wherein the thirdinformation is associated with other wireless local area networkssupported by the plurality of other access points.
 9. The method ofclaim 7, wherein the self-organizing network controller performs ananalysis of the first information and the second information and selectsfirst operational parameters for the access point and second operationalparameters for the base station based on the analysis, wherein thecontrol data indicates the first operational parameters, and furthercomprising changing an operational parameter of the access point basedon the control data.
 10. The method of claim 9, wherein the operationalparameter includes a configuration setting of the access point.
 11. Themethod of claim 9, wherein changing the operational parameter includesexecuting an application at the access point.
 12. The method of claim 7,further comprising, when the control data includes an instruction for astation in communication with the access point via the wireless localarea network, sending the instruction to the station from the accesspoint.
 13. The method of claim 12, wherein the instruction, whenexecuted at the station causes the station to modify a configurationsetting of the station, causes the station to join a second wirelesslocal area network associated with a second access point, causes thestation to join the wireless wide area network, causes the station toleave the wireless local area network, causes the station to terminatean application executing at the station, causes the station to executethe application at the station, causes the station to change a settingassociated with the application, or a combination thereof.
 14. Themethod of claim 6, wherein the first information includes an indicationof a load of the wireless local area network, an indication of qualityof service of the wireless local area network, signal strengthinformation received from a station associated with the wireless localarea network, or a combination thereof.
 15. The method of claim 6,wherein the first information includes information descriptive of accesspatterns of stations associated with the wireless local area network,information descriptive of applications used at the stations associatedwith the wireless local area network, or any combination thereof.
 16. Acomputer readable storage device storing instructions that areexecutable by a processor to cause the processor to execute an agentapplication to perform operations including: after determining that afirst type of communication path to a self-organizing network controlleris not available at an access point that supports a first wireless localarea network, selecting, at the access point, a second type ofcommunication path to the self-organizing network controller from aprioritized set of communication paths; and attempting to establish acommunication connection to the self-organizing network controller usingthe second type of communication path.
 17. The computer readable storagedevice of claim 16, wherein the operations further comprise: determiningfirst information associated with the wireless local area network; afterestablishing the communication connection, sending the first informationto the self-organizing network controller, wherein the self-organizingnetwork controller is configured to receive the first information and toreceive second information associated with a base station of a wirelesswide area network, and further comprising; receiving control data fromthe self-organizing network controller, wherein the control data isgenerated by the self-organizing network controller based on the firstinformation and the second information; and changing an operationalparameter of the access point based on the control data.
 18. Thecomputer readable storage device of claim 17, wherein the wireless localarea network is supported according to an Institute of Electrical andElectronics Engineers 802.11 specification, and the base stationsupports the wireless wide area network according to a 3rd GenerationPartnership Project Long-Term Evolution specification or a 3rdGeneration Partnership Project Evolved Universal Terrestrial AccessNetwork specification.
 19. An access point device comprising: aplurality of communication interfaces; a processor coupled to theplurality of communication interfaces; and a memory accessible by theprocessor, the memory storing instructions executable by the processorto execute an agent application to perform operations including: afterdetermining that a first type of communication path to a self-organizingnetwork controller is not available, selecting, by the agentapplication, a second type of communication path to the self-organizingnetwork controller from a prioritized set of types of communicationpaths; and attempting to establish a communication connection to theself-organizing network controller using the second type ofcommunication path, wherein a first communication interface of theplurality of communication interfaces supports communications via thefirst type of communication path and a second communication interface ofthe plurality of communication interfaces supports a first wirelesslocal area network.
 20. The access point device of claim 19, wherein theoperations further comprise: determining first information associatedwith the wireless local area network; after establishing thecommunication connection, sending the first information to theself-organizing network controller, wherein the self-organizing networkcontroller is configured to receive the first information and to receivesecond information associated with a base station of a wireless widearea network, and further comprising; receiving control data from theself-organizing network controller, wherein the control data isgenerated by the self-organizing network controller based on the firstinformation and the second information; and changing an operationalparameter of the access point based on the control data.